package com.hsr.web.controller;


import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.hsr.web.dto.ArticleDTO;
import com.hsr.web.dto.ArticleQuery;
import com.hsr.web.dto.InfoDTO;
import com.hsr.web.dto.InfoQuery;
import com.hsr.web.entity.TArticle;
import com.hsr.web.entity.TInfo;
import com.hsr.web.service.ITInfoService;
import com.hsr.web.utils.BeanUtil;
import com.hsr.web.utils.ResultVOUtil;
import com.hsr.web.vo.ResultVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.BeanWrapper;
import org.springframework.beans.BeanWrapperImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

import java.beans.PropertyDescriptor;
import java.util.HashSet;
import java.util.Set;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author tb
 * @since 2022-04-02
 */
@RestController
@Api(tags = "网站基本信息相关接口")
@RequestMapping("/info")
public class TInfoController {

    @Autowired
    ITInfoService itInfoService;

    @GetMapping()
    @ApiOperation("查询")
    public ResultVO getOne() {
        return ResultVOUtil.success(itInfoService.getOne(Wrappers.lambdaQuery(TInfo.class)));
    }

    @PutMapping("/update")
    @ApiOperation("编辑")
    public ResultVO update(@RequestBody InfoDTO infoDTO){
        TInfo info = itInfoService.getOne(Wrappers.lambdaQuery(TInfo.class));
        BeanUtils.copyProperties(infoDTO,info, BeanUtil.getNullPropertyNames((infoDTO)));
        itInfoService.updateById(info);
        return ResultVOUtil.success();
    }

    @GetMapping("/check")
    @ApiOperation("验证登录状态")
    public ResultVO check() {
        return ResultVOUtil.success();
    }


}
